package org.mtmi.ui.controls.curve;

import org.mtmi.ui.drawables.IDrawable;

/**
 * From a normalized (0..1) input value implementor may apply transformation,
 * like function to return a corresponding output value.
 * 
 * @See Curve
 */
public interface IValueTransformer
{
	/**
	 * @param input the input value [0..1]
	 * @return the value after transformation, must be in range [0..1]
	 */
	float transformValue( float input );
	
	/**
	 * @return a "image" corresponding to transformation 
	 */
	IDrawable getDrawable();
}
